package org.example.mapper;

import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;
import org.apache.ibatis.annotations.Update;
import org.example.pojo.User;

/**
* @author LENOVO
* @description 针对表【user(用户表)】的数据库操作Mapper
* @createDate 2024-03-23 17:53:37
* @Entity org.example.pojo.User
*/
@Mapper
public interface UserMapper {

    int deleteByPrimaryKey(Long id);

    int insert(User record);

    int insertSelective(User record);

    User selectByPrimaryKey(Long id);

    int updateByPrimaryKeySelective(User record);

    int updateByPrimaryKey(User record);

    //根据用户名查询用户
    @Select("select  * from user where username=#{username}")
    User findByUserName(String username);

    //添加
    @Insert("insert into user(username, password, create_time, update_time) " +
                " values(#{username},#{password},now(),now())")
    void add(String username, String password);

    @Update("update user set nickname=#{nickname},email=#{email},update_time=#{updateTime} where id=#{id}")
    void update(User user);

    @Update("update user set user_pic=#{avatarUrl},update_time=now() where id=#{id}")
    void updateAvatar(String avatarUrl,Integer id);

    @Update("update user set password=#{rePwd},update_time=now() where id=#{id}")
    void updatePwd(String rePwd, Integer id);
}
